package service

import (
	"errors"
	"lzppp/internal/app/model"
	"lzppp/internal/app/repository"
)

// ErrInvalidUser 定义错误类型
var ErrInvalidUser = errors.New("无效的用户信息")

func ListUsers() ([]model.User, error) {
	return repository.GetAllUsers()
}

// ListUsersByName ListUsers 查询用户，可选 name
func ListUsersByName(name string) ([]model.User, error) {
	return repository.GetUsers(name)
}

func CreateUser(user *model.User) error {
	// 校验用户信息
	if user.Name == "" {
		return ErrInvalidUser
	}

	// 调用 repository 层插入数据库
	return repository.InsertUser(user)
}
